package com.jwmp.rbac.domain;

import java.util.Date;
import java.util.List;

/**
 * @Description TODO
 * @Version 1.0
 */
public class Employee {
    private Long        id;             // 主键
    private String      username;       // 账号
    private String      password;       // 密码
    private String      name;           // 姓名
    private String      email;          // 邮箱
    private Integer     age;            // 年龄
    private Date        hiredate;       // 入职时间
    private Boolean     admin;          // 是否为管理员
    private Boolean     status;         // 员工状态 启用/注销
    private Department  dept;           // 所属部门
    private List<Role>  roleList;       // 角色列表

    public Employee() {
    }

    public Employee(Long id, String username, String password, String name, String email, Integer age, Date hiredate, Boolean admin, Boolean status) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.name = name;
        this.email = email;
        this.age = age;
        this.hiredate = hiredate;
        this.admin = admin;
        this.status = status;
    }

    public Employee(Long id, String username, String password, String name, String email, Integer age, Date hiredate, Boolean admin, Boolean status, Department dept,List<Role>  roleList) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.name = name;
        this.email = email;
        this.age = age;
        this.hiredate = hiredate;
        this.admin = admin;
        this.status = status;
        this.dept = dept;
        this.roleList = roleList;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Date getHiredate() {
        return hiredate;
    }

    public void setHiredate(Date hiredate) {
        this.hiredate = hiredate;
    }

    public Boolean getAdmin() {
        return admin;
    }

    public void setAdmin(Boolean admin) {
        this.admin = admin;
    }

    public Boolean getStatus() {
        return status;
    }

    public void setStatus(Boolean status) {
        this.status = status;
    }

    public Department getDept() {
        return dept;
    }

    public void setDept(Department dept) {
        this.dept = dept;
    }

    public List<Role> getRoleList() {
        return roleList;
    }

    public void setRoleList(List<Role> roleList) {
        this.roleList = roleList;
    }

    public String toString() {
        return "Employee{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", name='" + name + '\'' +
                ", email='" + email + '\'' +
                ", age=" + age +
                ", hiredate=" + hiredate +
                ", admin=" + admin +
                ", status=" + status +
                ", dept=" + dept +
                ", roleList=" + roleList +
                '}';
    }
}
